

	CUBURI
       --------

	Gigel are un joc cu N cuburi de aceeasi dimensiune care sunt
numerotate de la 1 la N. Tatal lui Gigel se joaca cu fiul sau invatandu-l
sa construiasca turnuri de diferite inaltimi si apoi punandu-i intre-
bari despre aceste turnuri. La inceput, cuburile sunt asezate unul cate
unul, formand astfel N turnuri, in fiecare existand un singur cub.
	La orice moment, tatal il poate ruga pe Gigel sa faca unul din
urmatoarele 2 lucruri:

1. Ia toate cuburile din turnul care contine cubul x si pune-le, in
aceeasi ordine, deasupra turnului care contine cubul y. Vom nota a-
ceasta operatie prin PUNE(x,y). Se garanteaza ca x nu se afla deja in
acelasi turn cu y si ca tatal nu va mentiona numere de cuburi mai mari
ca N.

2. Spune-mi cate cuburi se afla sub cubul z. Vom nota aceasta operatie
prin SUB(z).

	Desigur, Gigel este mult mai destept decat isi inchipuie tatal
lui si poate juca acest joc cu N<=30000 cuburi. Numarul de operatii
cerute de tatal lui Gigel nu va depasi 100000.

Cerinta:
	Scrieti un program care simuleaza modul in care Gigel raspunde
la operatii.

Date de intrare:
Fisier de intrare: CUBURI.IN

	Toate liniile fisierului de intrare contin cate o operatie in-
tr-unul din formatele:

P x y	pt. operatia PUNE(x,y)
S z	pt. operatia SUB(z)

Observatie: Valorile lui M si N nu sunt precizate explicit in fisierul
de intrare.

Date de iesire:
Fisier de iesire: CUBURI.OUT

	Fisierul de iesire trebuie sa contina un numar de linii egal
cu numarul operatiilor SUB. Pe fiecare linie se va afla un numar natu-
ral, reprezentand raspunsul la operatia SUB corespunzatoare.


Restrictii

* 2 <= N <= 30000
* Fisierul de intrare contine minim 2 si maxim 100.000 de linii
* 1 <= x,y,z <= N

Exemplu:

CUBURI.IN		CUBURI.OUT
P 1 6			1
S 1			0
P 2 4			2
P 2 6
S 3
S 4

Timp maxim de executie/test: 8 secunde